Sets the attributes that describe the Modality LUT.
Supported in Silverlight, Windows Phone 7.
Syntax
Parameters
- attributes
- The Modality LUT attributes to set.
- data
- Array of integers that holds the "LUT Data".
Example
This example will set the modality LUT information inside a DICOM dataset.
Visual Basic | Copy Code |
---|
Public Sub TestSetModalityLut()
Dim dicomFileName As String = LeadtoolsExamples.Common.ImagesPath.Path + "IMAGE3.dcm"
'Make sure to initialize the DICOM engine, this needs to be done only once
'In the whole application
DicomEngine.Startup()
Dim ds As DicomDataSet = New DicomDataSet()
Using (ds)
'Load DICOM File
ds.Load(dicomFileName, DicomDataSetLoadFlags.None)
Dim modalityLutAttributes As DicomModalityLutAttributes = New DicomModalityLutAttributes()
'No Modality LUT Sequence (0028,3000)
modalityLutAttributes.IsModalityLutSequence = False
'Yes there is a rescale slope and intercept
modalityLutAttributes.IsRescaleSlopeIntercept = True
modalityLutAttributes.RescaleIntercept = -128.0
modalityLutAttributes.RescaleSlope = 1.0
modalityLutAttributes.RescaleType = "UNSPECIFIED"
' Delete the existing modality LUT,
' although we don't have to !
ds.DeleteModalityLut()
'Set rescale slope and intercept
ds.SetModalityLut(modalityLutAttributes, Nothing)
ds.Save(LeadtoolsExamples.Common.ImagesPath.Path + "MLUT.dcm", DicomDataSetSaveFlags.None)
End Using
DicomEngine.Shutdown()
End Sub |
C# | Copy Code |
---|
public void TestSetModalityLut()
{
string dicomFileName = LeadtoolsExamples.Common.ImagesPath.Path + "IMAGE3.dcm";
//Make sure to initialize the DICOM engine, this needs to be done only once
//In the whole application
DicomEngine.Startup();
using (DicomDataSet ds = new DicomDataSet())
{
//Load DICOM File
ds.Load(dicomFileName, DicomDataSetLoadFlags.None);
DicomModalityLutAttributes modalityLutAttributes = new DicomModalityLutAttributes();
//No Modality LUT Sequence (0028,3000)
modalityLutAttributes.IsModalityLutSequence = false;
//Yes there is a rescale slope and intercept
modalityLutAttributes.IsRescaleSlopeIntercept = true;
modalityLutAttributes.RescaleIntercept = -128.0;
modalityLutAttributes.RescaleSlope = 1.0;
modalityLutAttributes.RescaleType = "UNSPECIFIED";
// Delete the existing modality LUT,
// although we don't have to !
ds.DeleteModalityLut();
//Set rescale slope and intercept
ds.SetModalityLut(modalityLutAttributes, null);
ds.Save(LeadtoolsExamples.Common.ImagesPath.Path + "MLUT.dcm", DicomDataSetSaveFlags.None);
}
DicomEngine.Shutdown();
} |
SilverlightCSharp | Copy Code |
---|
public void TestSetModalityLut(Stream dicomStream, Stream outputStream)
{
//Make sure to initialize the DICOM engine, this needs to be done only once
//In the whole application
DicomEngine.Startup();
using (DicomDataSet ds = new DicomDataSet())
{
//Load DICOM File
ds.Load(dicomStream, DicomDataSetLoadFlags.None);
DicomModalityLutAttributes modalityLutAttributes = new DicomModalityLutAttributes();
//No Modality LUT Sequence (0028,3000)
modalityLutAttributes.IsModalityLutSequence = false;
//Yes there is a rescale slope and intercept
modalityLutAttributes.IsRescaleSlopeIntercept = true;
modalityLutAttributes.RescaleIntercept = -128.0;
modalityLutAttributes.RescaleSlope = 1.0;
modalityLutAttributes.RescaleType = "UNSPECIFIED";
// Delete the existing modality LUT,
// although we don't have to !
ds.DeleteModalityLut();
//Set rescale slope and intercept
ds.SetModalityLut(modalityLutAttributes, null);
ds.Save(outputStream, DicomDataSetSaveFlags.None);
}
DicomEngine.Shutdown();
} |
SilverlightVB | Copy Code |
---|
Public Sub TestSetModalityLut(ByVal dicomStream As Stream, ByVal outputStream As Stream)
'Make sure to initialize the DICOM engine, this needs to be done only once
'In the whole application
DicomEngine.Startup()
Using ds As DicomDataSet = New DicomDataSet()
'Load DICOM File
ds.Load(dicomStream, DicomDataSetLoadFlags.None)
Dim modalityLutAttributes As DicomModalityLutAttributes = New DicomModalityLutAttributes()
'No Modality LUT Sequence (0028,3000)
modalityLutAttributes.IsModalityLutSequence = False
'Yes there is a rescale slope and intercept
modalityLutAttributes.IsRescaleSlopeIntercept = True
modalityLutAttributes.RescaleIntercept = -128.0
modalityLutAttributes.RescaleSlope = 1.0
modalityLutAttributes.RescaleType = "UNSPECIFIED"
' Delete the existing modality LUT,
' although we don't have to !
ds.DeleteModalityLut()
'Set rescale slope and intercept
ds.SetModalityLut(modalityLutAttributes, Nothing)
ds.Save(outputStream, DicomDataSetSaveFlags.None)
End Using
DicomEngine.Shutdown()
End Sub |
Remarks
Requirements
Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)
See Also